The current implementation is nonsense since the xenheap and the xen
text/data/etc mappings are nowhere near each other.
This is only actually used by the page offlining code, which isn't active on
ARM.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
unsigned long _mfn = (mfn); \
(_mfn >= xenheap_mfn_start && _mfn < xenheap_mfn_end); \
})
-#define is_xen_fixed_mfn(mfn) is_xen_heap_mfn(mfn)
+#define is_xen_fixed_mfn(mfn) \
+ ((((mfn) << PAGE_SHIFT) >= virt_to_maddr(&_start)) && \
+ (((mfn) << PAGE_SHIFT) <= virt_to_maddr(&_end)))
#define page_get_owner(_p) (_p)->v.inuse.domain
#define page_set_owner(_p,_d) ((_p)->v.inuse.domain = (_d))